//package com.liuguangzhou.utils;
//
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.core.io.ClassPathResource;
//import org.springframework.utils.ResourceUtils;
//
//import javax.servlet.annotation.WebServlet;
//import javax.servlet.http.HttpServlet;
//import java.io.*;
//import java.utils.HashMap;
//import java.utils.Map;
//import java.utils.Properties;
//
//
//@WebServlet(name = "GlobalServlet")  //标记为servlet，以便启动器扫描。
//public class GlobalServlet extends HttpServlet {
//
//    public static final Logger logger= LoggerFactory.getLogger(GlobalServlet.class);
//	/**
//	* 功能描述:
//	* 〈key:excel正则文件名, value:正则map〉
//	*/
//    public static final Map<String, Map<Integer,String>> RegularMap = new HashMap<String, Map<Integer,String>>();
//
//	@Override
//	public void init() {
//		logger.info("GlobalServlet init()");
//		Properties env = new Properties();
//		BufferedReader bufferedReader = null;
//		InputStream is = null;
//		try {
//		String cataPath = System.getenv("catalina.home");
//		if (org.apache.commons.lang.StringUtils.isBlank(cataPath)) {
//			cataPath = System.getProperty("catalina.home");
//		}
//		// 使用InPutStream流读取properties文件
//		String filePath = cataPath + "/conf/propertiesFile/globalconfig.properties";
//		File file = new File(filePath);
//		if (file.exists()) {
//			 bufferedReader = new BufferedReader(
//					new FileReader(filePath));
//			 env.load(bufferedReader);
//			  parseExcelRegular();
//		} else {
//			is = GlobalServlet.class.getClassLoader().getResourceAsStream("globalconfig.properties");
//			try {
////				env.load(is);
//				parseExcelRegular();
//			} catch (IOException e) {
//				e.printStackTrace();
//			}
//
//		}
//
//		} catch (IOException e) {
//			logger.debug("PropertyConfigurator load fail");
//
//		}
//
//		finally{
//			try{
//				if(is!=null){
//					is.close();
//				}
//
//				if(bufferedReader!=null){
//					bufferedReader.close();
//				}
//			}catch(IOException ioe){
//				ioe.printStackTrace();
//				System.out.println("Couldn't load property file ");
//			}
//		}
//
//		this.getServletContext().setAttribute("env",env);
//	}
//
//	/**
//	 * 解析excel中的正则并存入map
//	 * @throws IOException
//	 */
//	public void parseExcelRegular() throws IOException {
//		RegularMap.clear(); //清空正则map
////
////		System.out.println(System.getProperty("user.dir"));
////
////		System.out.println(ResourceUtils.getURL("classpath:").getPath()+"resource"+ File.separator+"regularExcel");
//
////		System.out.println(Thread.currentThread().getContextClassLoader().getResource("").getPath()+"template");
//
////
////		String path = ClassUtils.getDefaultClassLoader().getResource("").getPath();
////
////		System.out.println(path);
//
//
//		File path = new File(ResourceUtils.getURL("classpath:").getPath());
//		System.out.println(path+"resources/regularExcel");
//
////		if(!path.exists()) {
////			path = new File("");
////		}
////		System.out.println("path:"+path.getAbsolutePath());
//
//
////		File path1 = new File(ResourceUtils.getURL("classpath:").getPath());
////		if(!path1.exists()) path2 = new File("");
////		System.out.println("path:"+path2.getAbsolutePath())
////
////		System.out.println(path.get);
//
//
//
//
//		//Excel正则表达式文件夹路径
////		String FilePath = "";
//
////		ApplicationHome h = new ApplicationHome(getClass());
////		String dirPath = h.getSource().getParentFile().toString();
////
////		System.out.println(dirPath);
//
////		FilePath=FilePath.substring(1);
//
//		ClassPathResource classPathResource = new ClassPathResource("resources/regularExcel");
//
//		System.out.println(classPathResource.getPath());
//
//		File file = classPathResource.getFile();
//		if (file.isDirectory()) {
//			String[] filelist = file.list();
//            for (int i = 0; i < filelist.length; i++) {
//            	File regularFile = new File(file.getPath()+ File.separator + filelist[i]);
//            	if (!regularFile.isDirectory()) {
//            		RegularMap.put(regularFile.getName().replaceAll(".xlsx", ""), ExcelUtil.parseRegularExcel(regularFile));
//            	}
//            }
//		}
//	}
//}
